package br.com.as.dominio;

import java.io.Serializable;


/**
 * Classe que possui os atributos vinculando tela com base de dados.
 * 
 * @author msante
 *
 */
public class ItemCompra implements Serializable {

	/**
	 * 
	 */
	private static final long serialVersionUID = -8537269919120269942L;
	private Long id;
	private Double precoUnitario;
	private Double quantidade;
	private Double precoTotal;
	private Compra compra;
	private Produto produto;

	public ItemCompra() {
		compra = new Compra();
		produto = new Produto();
		precoUnitario = 0.00;
		quantidade = 0D;
	}
	
	public Long getId() {
		return id;
	}

	public void setId(Long id) {
		this.id = id;
	}

	public Double getPrecoUnitario() {
		return precoUnitario;
	}

	public void setPrecoUnitario(Double precoUnitario) {
		this.precoUnitario = precoUnitario;
	}

	public Double getQuantidade() {
		return quantidade;
	}

	public void setQuantidade(Double quantidade) {
		this.quantidade = quantidade;
	}

	public Double getPrecoTotal() {
		return precoTotal;
	}

	public void setPrecoTotal(Double precoTotal) {
		this.precoTotal = precoTotal;
	}

	public Compra getCompra() {
		return compra;
	}

	public void setCompra(Compra compra) {
		this.compra = compra;
	}

	public Produto getProduto() {
		return produto;
	}

	public void setProduto(Produto produto) {
		this.produto = produto;
	}

	@Override
	public int hashCode() {
		final int prime = 31;
		int result = 1;
		result = prime * result + ((id == null) ? 0 : id.hashCode());
		return result;
	}
	
	@Override
	public boolean equals(Object obj) {
		if (this == obj) return true;
		if (obj == null) return false;
		if (getClass() != obj.getClass()) return false;
		ItemCompra other = (ItemCompra) obj;
		if (id == null) {
			if (other.id != null) return false;
		} else if (!id.equals(other.id)) return false;
		return true;
	} 
	
}
